/**
 * 
 */
package com.cqan.core.pojo;

import java.io.Serializable;

/**
 * @author wuhui
 *
 * 下午03:47:02
 */
public abstract class DomainObject implements Cloneable, Serializable {

    private static final long serialVersionUID = -7693720375970752927L;

    public boolean isNull() {
        return false;
    }

    public abstract Serializable getUid();

    public DomainObject clone() {
        DomainObject ret = null;
        try {
            ret = (DomainObject) super.clone();
        } catch (CloneNotSupportedException cne) {
            cne.printStackTrace();
        }
        return ret;
    }

    @SuppressWarnings("unchecked")
    public <B extends DomainObject> B cloneConcrete() {
        return (B) this.clone();
    }

}
